Functional reactive programming (FRP for short) is a programming paradigm for reactive programming using the building blocks of functional programming
The key points of FRP are[1]:
An additional common but contentious trait is a notion of consistency when ordering events (not just within one stream). Variants include synchrony and glitch freedom.
The semantic model of FRP in side-effect free languages is typically in terms of continuous functions and typically over time [2][3]. In contrast, integration with a host language that has side-effects is typically given in terms of data flow or dependency graphs by extending the typical operational semantics to manipulate and use them.